package com.ruoyi.server.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.base.BaseVO;
import com.ruoyi.common.core.domain.entity.AppUser;
import com.ruoyi.common.core.domain.vo.AppUserVO;
import com.ruoyi.user.domain.AppUserAccount;
import com.ruoyi.user.domain.dto.AppUserAccountSnapshootDTO;
import com.ruoyi.user.domain.vo.AppUserAccountSnapshootVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "ServerTaskVO对象", description = "服务器新增对象")
public class ServerTaskVO extends BaseVO {

    private static final long serialVersionUID = 1L;

    /**
     * 任务id
     */
    @ApiModelProperty(value = "任务id")
    private Long taskId;

    /**
     * 任务名称
     */
    @ApiModelProperty(value = "任务名称")
    private String taskName;

    /**
     * 区服id
     */
    @ApiModelProperty(value = "区服id")
    private Long regionId;

    /**
     * 区服名称
     */
    @ApiModelProperty(value = "区服名称")
    private String regionName;

    /**
     * 资历
     */
    @ApiModelProperty(value = "资历")
    private Integer score;

    /**
     * 类型
     */
    @ApiModelProperty(value = "类型")
    private String teamType;

    /**
     * 价格
     */
    @ApiModelProperty(value = "价格")
    private BigDecimal price;

    /**
     * 优惠价
     */
    @ApiModelProperty(value = "优惠价")
    private BigDecimal discountPrice;

    /**
     * 介绍
     */
    @ApiModelProperty(value = "介绍")
    private String introduce;

    /**
     * 状态：0:草稿；1：发布；2：完成；3：开始
     */
    @ApiModelProperty(value = "状态：0:草稿；1：发布；2：完成；3：开始")
    private Integer state;

    /**
     * 状态：0:草稿；1：发布；2：完成；3：开始
     */
    @ApiModelProperty(value = "状态：0:草稿；1：发布；2：完成；3：开始")
    private String stateName;

    /**
     * 报名人数
     */
    @ApiModelProperty(value = "报名人数")
    private Integer applyPeopleCount = 0;

    /**
     * 删除标识
     */
    @ApiModelProperty(value = "删除标识")
    private Boolean delFlag;

    /**
     * 创建者
     */
    @ApiModelProperty(value = "创建者")
    private String createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 更新者
     */
    @ApiModelProperty(value = "更新者")
    private String updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 报名游戏账号列表
     */
    @ApiModelProperty(value = "报名游戏账号列表")
    private List<AppUserAccountSnapshootVO> appUserAccountList;

}
